package main

import (
	"fmt"
	//"net/rpc"
	"net/rpc/jsonrpc"
)

//第一种写法
func main01() {

	//1 用rpc连接服务器
	//conn, err := rpc.Dial("tcp", "127.0.0.1:8800")
	//使用jsonrpc连接服务器
	conn, err := jsonrpc.Dial("tcp", "127.0.0.1:8800")
	if err != nil {
		fmt.Println("rpc.Dial 失败：", err)
		return
	}
	defer conn.Close()

	//远程调用函数
	var replay string
	err = conn.Call("hello.HelloWorld", "颤三", &replay)

	if err != nil {
		fmt.Println("conn.Call 失败：", err)
		return
	}

	fmt.Println(replay)

}

//第二种 结合design封装rpc 测试
func main() {

	myClient := InitClient("127.0.0.1:8800")
	var resp string
	err := myClient.HelloWorld("炸弹", &resp)
	if err != nil {
		fmt.Println("myClient.HelloWorld 失败：", err)
		return
	}

}
